<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
            "http://www.w3.org/TR/REC-html40/loose.dtd">
<HTML>
<HEAD>



<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<META name="GENERATOR" content="hevea 1.08">
<LINK rel="stylesheet" type="text/css" href="umsroot.css">
<TITLE>
How do I make my programs run faster?
</TITLE>
</HEAD>
<BODY >
<A HREF="umsroot015.html"><IMG SRC ="previous_motif.gif" ALT="Previous"></A>
<A HREF="umsroot008.html"><IMG SRC ="contents_motif.gif" ALT="Up"></A>
<A HREF="umsroot017.html"><IMG SRC ="next_motif.gif" ALT="Next"></A>
<HR>

<H2 CLASS="section"><A NAME="htoc32">3.8</A>&nbsp;&nbsp;How do I make my programs run faster?</H2>

By default, ECL<SUP><I>i</I></SUP>PS<SUP><I>e</I></SUP> compiles programs as <EM>traceable</EM>, which
means that they can be traced using the built-in debugger.
To obtain maximum efficiency, the directive
<A HREF="../bips/kernel/obsolete/nodbgcomp-0.html"><B>nodbgcomp/0</B></A><A NAME="@default125"></A>
should be used, which will set some flags to produce a more efficient
and shorter code:
<BLOCKQUOTE CLASS="quote">
<PRE CLASS="verbatim">
[eclipse 2]: nodbgcomp.

yes.
[eclipse 3]: [user].
 father(abraham, isaac).
 father(isaac, jacob).
 father(jacob, joseph).
 ancestor(X, Y) :- father(X, Y).
 ancestor(X, Y) :- ancestor(X, Z), ancestor(Z, Y).
  user       compiled optimized 396 bytes in 0.02 seconds

yes.
[eclipse 4]:
</PRE></BLOCKQUOTE>
Section <A HREF="umsroot035.html#secefficientcode">6.7</A> contains more detailed discussion on other
techniques which can be used to optimise your programs.<BR>
<BR>
<HR>
<A HREF="umsroot015.html"><IMG SRC ="previous_motif.gif" ALT="Previous"></A>
<A HREF="umsroot008.html"><IMG SRC ="contents_motif.gif" ALT="Up"></A>
<A HREF="umsroot017.html"><IMG SRC ="next_motif.gif" ALT="Next"></A>
</BODY>
</HTML>
